'use strict';

/**
 * @ngdoc function
 * @name prestamosApp.controller:AdminSolicitudesCtrl
 * @description
 * # AdminSolicitudesCtrl
 * Controller of the prestamosApp
 */
var appControllers = angular.module('Controllers');

appControllers.constant('ESTADO_PENDIENTE', '1');
appControllers.constant('ESTADO_APROBADO', 2);
appControllers.constant('ESTADO_RECHAZADO', 3);

appControllers.controller(
    'AdminSolicitudesCtrl',
    [
        '$scope',
        'Solicitudes',
        'ESTADO_APROBADO',
        'ESTADO_RECHAZADO',
        'ESTADO_PENDIENTE',
        function ($scope, Solicitudes, ESTADO_APROBADO, ESTADO_RECHAZADO, ESTADO_PENDIENTE) {


            $scope.estaPendiente = function (prestamo) {
                return prestamo.estadoPrestamo.id === ESTADO_PENDIENTE;
            };


            Solicitudes.get()
                .success(function (response) {
                    // console.log('Solicitudes', response.prestamos);
                    $scope.solicitudes = response.prestamos;
                })
                .error(function (response) {
                    console.log('Solicitudes: error obteniendo solicitudes');
                    console.log(response);
                });

            $scope.aprobar = function(index, solicitud){
                // console.log(Solicitudes);
                $scope.solicitudes.splice(index, 1);
                Solicitudes.put(solicitud.id, ESTADO_APROBADO)
                    .success(function () {
                        console.log('Solicitudes: aprobada la solicitud con id ' + solicitud.id);
                        solicitud.estadoPrestamo = ESTADO_APROBADO;
                    })
                    .error(function (response) {
                        console.log('Solicitudes: error aprobando solicitud con id ' + solicitud.id);
                        console.log(response);
                    });
            };

            $scope.rechazar = function(index, solicitud){
                $scope.solicitudes.splice(index, 1);
                Solicitudes.put(solicitud.id, ESTADO_RECHAZADO)
                    .success(function () {
                        console.log('Solicitudes: rechazada la solicitud con id ' + solicitud.id);
                        solicitud.estadoPrestamo = ESTADO_RECHAZADO;
                    })
                    .error(function (response) {
                        console.log('Solicitudes: error rechazando solicitud con id ' + solicitud.id);
                        console.log(response);
                    });
            };
        }
    ]);
